package com.yunxi.dao.order;

import com.yunxi.core.dao.BaseMapperPlus;
import com.yunxi.hubToBiz.pojo.OrderActualSalesRespVO;
import com.yunxi.model.order.OrderCustomer;
import com.yunxi.order.pojo.*;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * <p>
 * 零售订单 Mapper 接口
 * </p>
 *
 * @author 
 * @since 2019-05-29
 */
public interface OrderCustomerMapper extends BaseMapperPlus<OrderCustomer> {
   OrderCustomerVO load(@Param("orderNo") String orderNo);

   List<OrderCustomerExOrderOemSaveReqVO> convertGroupList(@Param("partnerCode") String partnerCode);

   List<String> getCustomerNo(OrderCustomerExOrderOemSaveReqVO v);

   List<OrderCustomerVO> allList(OrderCustomerVO orderCustomerVO);

   /**
    * 通过订单id查询车辆配置名称
    * @param orderCustomerId
    * @return
    */
   String getCatalogNameByOrderId(String orderCustomerId);

   void assignSaler(OrderCustomer orderCustomer);

   void updateCancel(OrderCustomer oc);

   void cancelApply(OrderCustomer oc);

   List<OrderCustomerVO> listAllByCustomerNo(OrderCustomerVO orderCustomerVO);

   void unbindCar(OrderCustomer orderCustomer);

   void assignPartner(OrderCustomerVO orderCustomerVO);

    List<OrderCustomerVO> cancelListWait(Map map);

   String findCustomPackName(@Param("customPackCodeS")String customPackCodeS);

   List<OrderActualSalesRespVO> listByVinAndCity(Map map);

   ProductNameVO getNameByVO(@Param("productCode")String productCode);

   OrderCustomerVO getByOrderCustomerNo(String orderCustomerNo);

   String isDelivery(@Param("orderCustomerNo")String orderCustomerNo);

   String isActualSales(@Param("orderCustomerNo")String orderCustomerNo);

    void updateVinByOrderCutomerNo(OrderCustomerVO vo);

   void assignBatch(List<OrderCustomer> orderCustomerList);

   void updateVin(@Param("vin")String vin);

   void updateByOrderCustomerNo(@Param("orderCustomerNo")String orderCustomerNo);

    OrderCustomerVO getByVin(String vin);

   void cancel(OrderCustomer oc);

    List<OrderCustomerExportVO> exportOrder(OrderCustomerVO orderCustomerVO);
}
